//测试Ext.domn.Element类的三个方法
//Ext.get()、Ext.fly()、Ext.getDom()

Ext.onReady(function() {

	//注意Ext.get()是Ext.dom.Element.get()的别名
	//Ext.get()方法使用了Ext.cache的缓存，源码在AbstractElement.js
	//get方法占用较大的内存，fly节省内存
	/*var e1 = Ext.get("d1");
	var e2 = Ext.get("d2");
	e1.dom.innerHTML = "我是第一个div";
	e2.dom.innerHTML = "我是第二个div";*/
	
	//fly返回的实际上是一个Fly对象，但是Fly是Element的子类，所以可以当作Element使用
	//可以发现，只有ef2的修改起作用，这是因为其实只是缓存的最后一次查找的结果，具体可以看源码
	/*var ef1 = Ext.fly("d1");
	var ef2 = Ext.fly("d2");
	ef1.dom.innerHTML = "享元模式1";
	ef2.dom.innerHTML = "享元模式2";*/
	
	//getDom()方法定义在ext-more.js，除了返回的是Dom对象，没啥可说的
	//var ed1 = Ext.getDom("d1");
	
	//Ext.dom.Element.query()一般不使用，转而使用Ext.query(),返回一个HTMLCollection
	//方法声明:query( String path, [HTMLElement root], [String type] ) : HTMLElement[]
	/*var collection = Ext.query("div");
	alert(collection.length);*/
	
	//Ext.dom.Element.select()方法和Ext.select()是等效的，此时就相当于一个别名了
	//这个方法定义在CompositeElement.js里面
	//注意避免使用此方法用id查找，因为返回的始终是一个集合
	//第二个参数是指返回的集合的类型，如果是false，那么返回的是CompositeElement，如果是true，返回CompositeElementLite,前者
	//里面的元素是DOM，后面的是Element，需要使用item.dom.innerHTML
	var collection = Ext.select("div", false, document);
	Ext.Array.each(collection.elements, function(item) {
		alert(item.innerHTML);
	});
	
	//其它的很多easy的方法就不说了，一看就明白了，类似jquery	
});